//获取应用实例
const app = getApp()

Page({
  data: {
    tabIndex: 'hots',
    hotsStatus: 0,
    comingStatus: 0,
    page: 0,
    hasMore: true
  },
  //事件处理函数
  switch(e) {
    let _this = this
    // console.log(e);
    // console.log(e.target.dataset);
    this.setData({
      tabIndex: e.target.dataset.tabIndex
    })
    // 当用户点击tab时发送请求获取数据
    // 当tab下没有数据时，才发送请求
    // 根据status 状态值是否要发送请求  0 需要发送请求  1 不需要发送请求
    let status = e.target.dataset[e.target.dataset.tabIndex + 'Status']
    // console.log(status);
    if (status === 0) {
      // 请求数据
      if (e.target.dataset.tabIndex === 'hots') {
        // 请求热门数据
      }
      if (e.target.dataset.tabIndex === 'coming') {
        // 加载状态
        wx.showLoading({
          title: '数据加载中...'
        });
        // 请求待映数据
        // 待映-最受欢迎
        wx.request({
          url: 'https://wx.maoyan.com/mmdb/movie/v1/list/wish/order/coming.json',
          method: 'get',
          data: {
            ci: 1,
            limit: 30,
            offset: 0
          },
          success(res1) {
            // console.log(res1);
            // 请求 待映-电影列表
            wx.request({
              url: 'https://wx.maoyan.com/mmdb/movie/v2/list/rt/order/coming.json',
              methos: 'get',
              data: {
                ci: 1,
                limit: 10
              },
              success(res2) {
                console.log(res1);
                console.log(res2);
                res1.data.data.coming.forEach(item => {
                  item.comingTitle = item.comingTitle.slice(0, -3)
                  item.img = item.img.replace('w.h', '170.230')
                })
                let title = ''
                res2.data.data.coming.forEach(item => {
                  if (title !== item.comingTitle) {
                    title = item.comingTitle
                  } else {
                    item.comingTitle = ''
                  }
                  item.img = item.img.replace('w.h', '128.180')
                })
                _this.setData({
                  comingStatus: 1,
                  v1: {
                    items: res1.data.data.coming
                  },
                  v2: {
                    items: res2.data.data.coming
                  }
                })
                wx.hideLoading()
              }
            })
          }
        })
      }
    }
  },
  toast() {
    // 显示消息提示框
    // wx.showToast({
    //   title: '显示消息提示框',
    //   icon: 'none',
    //   image: '../../assets/icons/cinema.png',
    //   duration: 1500
    // });

    // 显示模态对话框
    // wx.showModal({
    //   title: '提示',
    //   content: '这是一个模态弹窗',
    //   success (res) {
    //     if (res.confirm) {
    //       console.log('用户点击确定')
    //     } else if (res.cancel) {
    //       console.log('用户点击取消')
    //     }
    //   }
    // })

    // 显示操作菜单
    wx.showActionSheet({
      itemList: ['拍照', '啧啧啧', 'C'],
      success (res) {
        console.log(res.tapIndex)
      },
      fail (res) {
        console.log(res.errMsg)
      }
    })
  },
  onLoad: function () {
    let _this = this
    console.log('页面加载完毕');
    // console.log(app);
    app.getLocation(city => {
      this.setData({
        location: city
      })
      // 加载状态
      wx.showLoading({
        title: '数据加载中...'
      });
      // 根据用户所在城市查询数据-(热映列表)
      wx.request({
        url: 'https://wx.maoyan.com/mmdb/movie/v2/list/hot.json',
        methos: 'get',
        data: {
          limit: 12,
          offset: 0,
          ct: city
        },
        success(res) {
          console.log(res);
          res.data.data.hot.forEach(item => {
            item.img = item.img.replace('w.h', '128.180')
          })
          _this.setData({
            hots: {
              items: res.data.data.hot
            }
          })
          // 修改状态
          _this.setData({
            hotsStatus: 1
          })
          // setTimeout(() => {
          //   wx.hideLoading()
          // }, 3000)
          // 加载完成
          wx.hideLoading()
        }
      })
    })
  },
  onReady() {
    console.log('页面初次渲染完毕');
  },
  onShow() {
    console.log('页面显示出来了');
  },
  onHide() {
    console.log('页面切换了');
  },
  onPullDownRefresh() {
    let _this = this
    console.log('页面下拉了');
    // if ('请求完毕') {
    //   wx.stopPullDownRefresh()
    // }
    wx.request({
      url: 'https://wx.maoyan.com/mmdb/movie/v2/list/hot.json',
      methos: 'get',
      data: {
        limit: 12,
        offset: 0,
        ct: _this.data.location
      },
      success(res) {
        // console.log(res);
        res.data.data.hot.forEach(item => {
          item.img = item.img.replace('w.h', '128.180')
        })
        _this.setData({
          page: 0,
          hots: {
            items: res.data.data.hot
          }
        })
        // 修改状态
        _this.setData({
          hotsStatus: 1
        })
        wx.stopPullDownRefresh()
      }
    })
    // setTimeout(() => {
    //   wx.stopPullDownRefresh()
    // }, 1000)
  },
  onReachBottom() {
    console.log('页面触底了');
    if (this.data.hasMore === false && this.data.page !== 0) return
    console.log('加载更多了');
    let _this = this
    let location = this.data.location
    let _page = this.data.page
    _this.setData({
      page: _page + 12
    })
    wx.showLoading({
      title: '数据加载中...'
    })
    wx.request({
      url: 'https://wx.maoyan.com/mmdb/movie/v2/list/hot.json',
      method: 'get',
      data: {
        limit: 12,
        offset: _this.data.page,
        ct: location
      },
      success(res) {
        res.data.data.hot.forEach(item => {
          item.img = item.img.replace('w.h', '128.180')
        })
        _this.setData({
          hots: {
            items: _this.data.hots.items.concat(res.data.data.hot)
          },
          hasMore: res.data.data.paging.hasMore
        })
        wx.hideLoading()
      }
    })
  }
})
